package com.example.jdbc.config;

import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * @ConfigurationProperties 是Spring boot 的注解（从import可以看出），只能用来读取spring boot 的配置文件
 * 即只能读取 application.properties / application.yml （可以读取jdbc.properties的）
 * 若要读取其他信息，则只能将其他文件中的信息放到上面两个文件中，然后进行读取
 * prefix 是读取以该前缀开头的属性
 * 可以读取到
 * jdbc.driverClassName
 * jdbc.url
 * jdbc.userName
 * jdbc.password
 * @ConfigurationProperties 与 spring context 提供的 @PropertySource 不同的是
 * @ConfigurationProperties 依赖set()方法进行赋值，所以属性的名字必须和jdbc.properties文件中的属性名相同（不包含前缀），才能找到set()方法
 */
//@ConfigurationProperties(prefix = "jdbc") //因为与最新版本com.example.jdbc.config.JdbcConfigurationFinalEdition重复，所以注释
public class JdbcProperties {
    private String driverClassName;
    private String url;
    private String userName;
    private String password;


    public JdbcProperties() {
    }

    public String getDriverClassName() {
        return driverClassName;
    }

    public void setDriverClassName(String driverClassName) {
        this.driverClassName = driverClassName;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}
